package com.koo.modules.bja.entity;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.koo.common.base.entity.BaseEntity;
import com.koo.common.base.entity.CommonEntity;
import io.swagger.annotations.ApiModelProperty;
import io.swagger.annotations.ApiModel;
import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;

import java.math.BigDecimal;
import java.io.Serializable;
import java.util.Date;

import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 产品数据
 *
 * @author charlin
 * @email 136137465@qq.com
 * @date 2023-01-05 16:07:34
 */
@Data
@ApiModel("产品数据")
@TableName("bja_product")
public class BjaProductEntity extends BaseEntity {
    private static final long serialVersionUID = 1L;


    @ExcelIgnore
    @TableId
    private Long productId;

    @ColumnWidth(11)
    @ExcelProperty("来源")
    @ApiModelProperty(value = "来源")
    private String dataSource;

    @ColumnWidth(11)
    @ExcelProperty("类别id")
    @ApiModelProperty(value = "类别id")
    private Long categoryId;

    @ColumnWidth(11)
    @ExcelProperty("类别名称")
    @ApiModelProperty(value = "类别名称")
    private String categoryName;

    @ColumnWidth(11)
    @ExcelProperty("货号")
    @ApiModelProperty(value = "货号")
    private String productCode;

    @ColumnWidth(11)
    @ExcelProperty("商品名")
    @ApiModelProperty(value = "商品名")
    private String productName;

    @ColumnWidth(11)
    @ExcelProperty("通用名")
    @ApiModelProperty(value = "通用名")
    private String genericName;

    @ColumnWidth(11)
    @ExcelProperty("产地")
    @ApiModelProperty(value = "产地")
    private String producingArea;

    @ColumnWidth(11)
    @ExcelProperty("供应商id")
    @ApiModelProperty(value = "供应商id")
    private Long supplierId;

    @ColumnWidth(11)
    @ExcelProperty("供应商名称")
    @ApiModelProperty(value = "供应商名称")
    private String supplierName;

    @ColumnWidth(11)
    @ExcelProperty("规格")
    @ApiModelProperty(value = "规格")
    private String standard;

    @ColumnWidth(11)
    @ExcelProperty("单位")
    @ApiModelProperty(value = "单位")
    private String unit;

    @ColumnWidth(11)
    @ExcelProperty("助记名")
    @ApiModelProperty(value = "助记名")
    private String mnemonicName;

    @ColumnWidth(11)
    @ExcelProperty("批发价")
    @ApiModelProperty(value = "批发价")
    private BigDecimal tradePrice;

    @ColumnWidth(11)
    @ExcelProperty("平均成本价")
    @ApiModelProperty(value = "平均成本价")
    private BigDecimal averagePrice;

    @ColumnWidth(11)
    @ExcelProperty("零售价")
    @ApiModelProperty(value = "零售价")
    private BigDecimal retailPrice;

    @ColumnWidth(11)
    @ExcelProperty("本地零售价")
    @ApiModelProperty(value = "本地零售价")
    private BigDecimal localRetailPrice;

    @ColumnWidth(11)
    @ExcelProperty("会员价")
    @ApiModelProperty(value = "会员价")
    private BigDecimal memberPrice;

    @ColumnWidth(11)
    @ExcelProperty("售价1")
    @ApiModelProperty(value = "售价1")
    private BigDecimal sellingPrice1;

    @ColumnWidth(11)
    @ExcelProperty("售价2")
    @ApiModelProperty(value = "售价2")
    private BigDecimal sellingPrice2;

    @ColumnWidth(11)
    @ExcelProperty("售价3")
    @ApiModelProperty(value = "售价3")
    private BigDecimal sellingPrice3;

    @ColumnWidth(11)
    @ExcelProperty("条码")
    @ApiModelProperty(value = "条码")
    private String barCode;

    @ColumnWidth(11)
    @ExcelProperty("本地条码")
    @ApiModelProperty(value = "本地条码")
    private String localBarCode;

    @ColumnWidth(11)
    @ExcelProperty("属性id")
    @ApiModelProperty(value = "属性id")
    private Long propertyId;

    @ColumnWidth(11)
    @ExcelProperty("属性名称")
    @ApiModelProperty(value = "属性名称")
    private String propertyName;

    @ColumnWidth(11)
    @ExcelProperty("是否处方药")
    @ApiModelProperty(value = "是否处方药")
    private Integer isRxDrug;

    @ColumnWidth(11)
    @ExcelProperty("批准文号")
    @ApiModelProperty(value = "批准文号")
    private String approvalNo;

    @ColumnWidth(11)
    @ExcelProperty("生产单位")
    @ApiModelProperty(value = "生产单位")
    private String produceFactory;

    @ColumnWidth(11)
    @ExcelProperty("剂型")
    @ApiModelProperty(value = "剂型")
    private String dosageForm;

    @ColumnWidth(11)
    @ExcelProperty("验收标准")
    @ApiModelProperty(value = "验收标准")
    private String acceptanceLevel;

    @ColumnWidth(11)
    @ExcelProperty("存储条件")
    @ApiModelProperty(value = "存储条件")
    private String storageCondition;

    @ColumnWidth(11)
    @ExcelProperty("本位码")
    @ApiModelProperty(value = "本位码")
    private String standardCode;

    @ColumnWidth(11)
    @ExcelProperty("省药监规格")
    @ApiModelProperty(value = "省药监规格")
    private String provinceStandard;

    @ColumnWidth(11)
    @ExcelProperty("有效期月")
    @ApiModelProperty(value = "有效期月")
    private Double expiryDate;

    @ColumnWidth(11)
    @ExcelProperty("是否医保品种")
    @ApiModelProperty(value = "是否医保品种")
    private Integer isYiBao;

    @ColumnWidth(11)
    @ExcelProperty("含特药品种0否1是")
    @ApiModelProperty(value = "含特药品种0否1是")
    private Integer isGmp;

    @ColumnWidth(11)
    @ExcelProperty("功效")
    @ApiModelProperty(value = "功效")
    private String effect;

    @ColumnWidth(11)
    @ExcelProperty("性状")
    @ApiModelProperty(value = "性状")
    private String characterInfo;

    @ColumnWidth(11)
    @ExcelProperty("品牌id")
    @ApiModelProperty(value = "品牌id")
    private Long brandId;

    @ColumnWidth(11)
    @ExcelProperty("是否药品0否1是")
    @ApiModelProperty(value = "是否药品0否1是")
    private Integer isDrug;

    @ColumnWidth(11)
    @ExcelProperty("药品分类")
    @ApiModelProperty(value = "药品分类")
    private String drugCategoryId;

    @ColumnWidth(11)
    @ExcelProperty("价格浮动")
    @ApiModelProperty(value = "价格浮动")
    private BigDecimal priceFloat;

    @ColumnWidth(11)
    @ExcelProperty("货位")
    @ApiModelProperty(value = "货位")
    private String goodsAllocation;

    @ColumnWidth(11)
    @ExcelProperty("拆零后单位")
    @ApiModelProperty(value = "拆零后单位")
    private String afterScatteredUnit;

    @ColumnWidth(11)
    @ExcelProperty("拆零系数")
    @ApiModelProperty(value = "拆零系数")
    private String scatteredCoefficient;

    @ColumnWidth(11)
    @ExcelProperty("审核标志0否1是")
    @ApiModelProperty(value = "审核标志0否1是")
    private Integer isAudit;

    @ColumnWidth(11)
    @ExcelProperty("作废标志0否1是")
    @ApiModelProperty(value = "作废标志0否1是")
    private Integer isCancel;

    @ColumnWidth(11)
    @ExcelProperty("GSP类别编码")
    @ApiModelProperty(value = "GSP类别编码")
    private String gspType;

    @ColumnWidth(11)
    @ExcelProperty("库存上限")
    @ApiModelProperty(value = "库存上限")
    private BigDecimal storageUpper;

    @ColumnWidth(11)
    @ExcelProperty("库存下限")
    @ApiModelProperty(value = "库存下限")
    private BigDecimal storageFloor;

    @ColumnWidth(11)
    @ExcelProperty("养护理由")
    @ApiModelProperty(value = "养护理由")
    private String conserveReason;

    @ColumnWidth(11)
    @ExcelProperty("重点养护0否1是")
    @ApiModelProperty(value = "重点养护0否1是")
    private Integer isMainConserve;

    @ColumnWidth(11)
    @ExcelProperty("养护措施")
    @ApiModelProperty(value = "养护措施")
    private String conserveMeasure;

    @ColumnWidth(11)
    @ExcelProperty("进口药品0否1是")
    @ApiModelProperty(value = "进口药品0否1是")
    private Integer isImportedDrug;

    @ColumnWidth(11)
    @ExcelProperty("中药饮片0否1是")
    @ApiModelProperty(value = "中药饮片0否1是")
    private Integer isDrugPiece;

    @ColumnWidth(11)
    @ExcelProperty("医疗器械类别")
    @ApiModelProperty(value = "医疗器械类别")
    private Integer instrumnetType;

    @ColumnWidth(11)
    @ExcelProperty("蛋白同化制剂标志0否1是")
    @ApiModelProperty(value = "蛋白同化制剂标志0否1是")
    private Integer isEggPreparation;

    @ColumnWidth(11)
    @ExcelProperty("二类精神药品标志0否1是")
    @ApiModelProperty(value = "二类精神药品标志0否1是")
    private Integer isTwoClassmentalDrug;

    @ColumnWidth(11)
    @ExcelProperty("含麻黄碱标志0否1是")
    @ApiModelProperty(value = "含麻黄碱标志0否1是")
    private Integer isEphedrine;

    @ColumnWidth(11)
    @ExcelProperty("含肽类激素标志0否1是")
    @ApiModelProperty(value = "含肽类激素标志0否1是")
    private Integer isThormone;

    @ColumnWidth(11)
    @ExcelProperty("一类精神药品标志0否1是")
    @ApiModelProperty(value = "一类精神药品标志0否1是")
    private Integer isMindDrug;

    @ColumnWidth(11)
    @ExcelProperty("危险化学品标志0否1是")
    @ApiModelProperty(value = "危险化学品标志0否1是")
    private Integer isDangerChemistry;

    @ColumnWidth(11)
    @ExcelProperty("麻醉药品标志0否1是")
    @ApiModelProperty(value = "麻醉药品标志0否1是")
    private Integer isAnesthetic;

    @ColumnWidth(11)
    @ExcelProperty("医疗用毒性品0否1是")
    @ApiModelProperty(value = "医疗用毒性品0否1是")
    private Integer isMedicalToxicity;

    @ColumnWidth(11)
    @ExcelProperty("疫苗0否1是")
    @ApiModelProperty(value = "疫苗0否1是")
    private Integer isVaccine;

    @ColumnWidth(11)
    @ExcelProperty("诊断试剂0否1是")
    @ApiModelProperty(value = "诊断试剂0否1是")
    private Integer isDiagnosticReagent;

    @ColumnWidth(11)
    @ExcelProperty("含兴奋剂药品0否1是")
    @ApiModelProperty(value = "含兴奋剂药品0否1是")
    private Integer isStimulant;

    @ColumnWidth(11)
    @ExcelProperty("收货是否需要防串码0否1是")
    @ApiModelProperty(value = "收货是否需要防串码0否1是")
    private Integer isEan1;

    @ColumnWidth(11)
    @ExcelProperty("拣货是否需要防串码0否1是")
    @ApiModelProperty(value = "拣货是否需要防串码0否1是")
    private Integer isEan2;

    @ColumnWidth(11)
    @ExcelProperty("是保健品标志0否1是")
    @ApiModelProperty(value = "是保健品标志0否1是")
    private Integer isHealthFood;

    @ColumnWidth(11)
    @ExcelProperty("食品标志0否1是")
    @ApiModelProperty(value = "食品标志0否1是")
    private Integer isFood;

    @ColumnWidth(11)
    @ExcelProperty("门店必备分类")
    @ApiModelProperty(value = "门店必备分类")
    private String storeRequireClass;

    @ColumnWidth(11)
    @ExcelProperty("OTC分类")
    @ApiModelProperty(value = "OTC分类")
    private String otcClass;

    @ColumnWidth(11)
    @ExcelProperty("终止妊娠品0否1是")
    @ApiModelProperty(value = "终止妊娠品0否1是")
    private Integer isTermination;

    @ColumnWidth(11)
    @ExcelProperty("季节属性分类")
    @ApiModelProperty(value = "季节属性分类")
    private String seasonClass;

    @ColumnWidth(11)
    @ExcelProperty("核心品种分类")
    @ApiModelProperty(value = "核心品种分类")
    private String coreitemClass;

    @ColumnWidth(11)
    @ExcelProperty("配送必备分类")
    @ApiModelProperty(value = "配送必备分类")
    private String deliveryRequireClass;

    @ColumnWidth(11)
    @ExcelProperty("区域范围名称")
    @ApiModelProperty(value = "区域范围名称")
    private String arearangeName;

    @ColumnWidth(11)
    @ExcelProperty("低温品种")
    @ApiModelProperty(value = "低温品种")
    private Integer lowTemperature;

    @ColumnWidth(11)
    @ExcelProperty("ABC分类属性")
    @ApiModelProperty(value = "ABC分类属性")
    private String abcClass;

    @ColumnWidth(11)
    @ExcelProperty("陈列区")
    @ApiModelProperty(value = "陈列区")
    private String exhibitionArea;


}
